package sv.com.renacempleo.dao;

import java.util.List;
import java.util.Map;

import org.hibernate.criterion.DetachedCriteria;

import sv.com.renacempleo.exception.WebException;


public interface BaseDao {

	public void save(Object object) throws WebException;
	public void update(Object object) throws WebException;
	public void delete(Object object) throws WebException;
	public void saveOrUpdateAll(List<?> objectList) throws WebException;
	public void updateAll(List<?> objectList) throws WebException;
	public void deleteAll(List<?> objectList) throws WebException;
	public Object findById(Class<?> entityClass, Long entityId) throws WebException;
	public Object findByIdStr(Class<?> entityClass, String entityId) throws WebException;
	public List<?> findByCriteria(DetachedCriteria criteria) throws WebException;
	public List<?> findByHQLQuery(String hqlQuery, Object[] values) throws WebException;
	public List<?> findBySQLQuery(String sqlQuery, Object[] values) throws WebException;
	public void executeNonHibernateQuery(String hqlQuery, Map<String, Object> parameters) throws WebException;

}
